Having covered application distribution in the last section of this course, the short supplementary
section will give you a brief overview on how to notarize those apps for newer versions of OS.
Now, before we get started with how to do that, let's first understand what exactly it means to notarize
a Mac app as this concept is often misunderstood.
In short, notarization is a service by which Apple checks an application to ensure it doesn't contain
any malicious code, and the certificate used to sign the app is in fact valid.
This then results in a ticket being issued from Apple, which is stapled to the application, and only
an app like that with a valid ticket will be allowed through Mac OS gatekeeper.
The security layer protecting Mac OS users.
Where the confusion comes in, however, is that this is a strict requirement, which it isn't necessarily.
Instead, when a user attempts to open an app that's not been notarized, gatekeeper will present the
user with a warning, asking them to confirm that they do want to open the app.
And should the user agree?
That's it.
Gatekeeper marks the app as accepted and any future launches will automatically be allowed.
Of course, this extra step, combined with a warning, isn't ideal and might put some users off, causing
them to not want to use the app.
So there's that to consider.
That said, if you're going to distribute any Mac apps, then you will be enrolling in Apple's developer
program anyway to obtain certificates.
So there's no real reason not to also notarize, as only developers with paid Apple developer accounts
will be able to make use of the notary service.
OK, so now that we've covered the requirements, let's look at the two likely distribution paths for
Mac apps, the first being through Apple's Mac App Store.
I've specifically not covered this as it's a somewhat straightforward process using electron builder
as we saw in the previous lesson.
You built the maps or Mac App Store Target, making sure to set all the required parameters for that
target and then upload that resulting app using Apple's transport app, which you can download from
the Mac App Store.
The Transporter app will also tell you exactly what is missing should the upload fail for some reason.
So in this situation, when distributing through the App Store, you don't actually need to notarize
the app yourself.
The entire notarization will be done automatically after uploading the app for review.
Simple enough, the second way of distributing a Mac and then being any other way that isn't through
Apple's own Mac App Store.
This can be directly to the user through a website or via an unofficial third party app store.
And this direct distribution then is when you'll have to notarised the app yourself using Apple's Notari
service in order to allow it past gatekeeper automatically.
So in the next lesson, I'll show you how to use the exact build process we've covered in the previous
lessons, along with an additional module to automate this process using electron balde.